/**
 * Created by Administrator on 2017/5/4 0004.
 */
function createXHR() {
    if(window.XMLHttpRequest){
        return new  XMLHttpRequest();
    }
    return new ActiveXObject("Microsoft.XMLHTTP");
}






function Ajax(json) {
    var xhr=new createXHR();
    if(json.async==undefined){
        json.async=true;
    }

//        判断“get”还是“post”；
    if(json.type=="get"){
        xhr.open(json.type,json.url+"?"+param(json.data),json.async);
        xhr.send(null);
    }else{
        xhr.open(json.type,json.url,json.async);
        //如果是post请求，必须加上这样的一句话，在请求头，模拟表单的格式。
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        xhr.send(param(json.data))
    }


//        判断是同步“false”还是异步“ture”；
//        同步“false”：
    if (json.async==false){
        if(xhr.status==200){
            var result="";
            if(json.dataType=="json"){
                result=JSON.parse(xhr.responseText);
            }else if(json.dataType=="text"){
                result=xhr.responseText;
            }else if(json.dataType=="xml"){
                result=xhr.responseXML;
            }else {
                result= JSON.parse(xhr.responseText)
            }
            if(json.success){
                json.success(result);// 最后把结果返回出去。利用回调函数
            }
        }


//      异步“true”：
    }else
    if(json.async==true){
        xhr.onreadystatechange=function () {
            if(xhr.readyState==4){
                if(xhr.status==200){
                    var result="";
                    if(json.dataType=="json"){
                        result=JSON.parse(xhr.responseText);
                    }else if(json.dataType=="text"){
                        result=xhr.responseText;
                    }else if(json.dataType=="xml"){
                        result=xhr.responseXML;
                    }else {
                        result= JSON.parse(xhr.responseText)
                    }
                    if(json.success){
                        json.success(result);// 最后把结果返回出去。利用回调函数
                    }
                }
            }
        }
    }
}


function param(data) {
    var str="";
    for(var key in data){
        str+=encodeURIComponent(key)+"="+encodeURIComponent(data[key])+"&";
    }
    return str;
}



// Ajax({
//     type:"get",
//     url:"http://10.36.132.104/userinfo/getLogin",
//     async:"true",
//     dataType:"json",
//     data:{uname:"周杰伦",age:18},
//     success:function (result) {
//         console.log(result);
//     }
// })